(* Copyright (C) 2010 School of Software Engineering, 
 * University of Science and Technology of China.
 *
 * This code is released under a BSD-style license.
 * See the file LICENSE for details.
 *)

signature BYTE_CODE_STRUCTS =
sig
end

signature BYTE_CODE = 
sig
    include BYTE_CODE_STRUCTS
    
structure Command:
          sig
              datatype t
                = Pop
                | Add
                | Sub 
                | Swap 
                | Push of int
                | Jump of int 
                | Jeq of int 
                | Jlt of int
                | Load of int
                | Store of int
                | Stop
                  
              val layout: t -> Layout.t
              val layout2: t -> Layout.t
              val layouts: t list -> Layout.t * int
          end
          
structure CodeHeap:
          sig
              datatype t = T of Command.t list
                                
              val layout: t -> Layout.t
          end              
end
